package com.rede.didiok.common.dto.file;

import java.util.Date;
import java.util.List;
import java.util.Map;

import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.rede.didiok.common.dto.BaseDto;
import com.rede.didiok.common.dto.user.UserDto;


/**
 * 文件表
 * 
 * @author Rede
 * @email didiok@foxmail.com
 * @date 2023-08-10 20:31:33
 */
@Data
public class FileDto extends BaseDto<FileDto> {
	/**
	 * 如果是用户上传，则包含用户uid
	 */
	private String createUserUid;

	/**
	 * 如果是管理员上传，则包含管理员uid
	 */
	private String adminUid;

	/**
	 * 项目名
	 */
	private String projectName;

	/**
	 * 模块名
	 */
	private String sortName;

	/**
	 * 分类uid
	 */
	private String sortUid;

	/**
	 * 图片Url集合
	 */
	private List<String> urlList;

	/**
	 * 系统配置
	 */
	private Map<String, String> systemConfig;

	/**
	 * 上传图片时携带的token令牌
	 */
	private String token;

	/**
	 * 文件uid列表
	 */
	private List<String> fileUidList;

	/**
	 * 是否展示用户信息
	 */
	private boolean showUser;


	/**
	 * 旧文件名
	 */
	private String fileOldName;
	/**
	 * 文件名
	 */
	private String picName;
	/**
	 * 文件地址
	 */
	private String picUrl;
	/**
	 * 文件扩展名
	 */
	private String picExpandedName;
	/**
	 * 文件大小
	 */
	private Integer fileSize;
	/**
	 * 文件分类uid
	 */
	private String fileSortUid;
	/**
	 * 创建时间
	 */
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;
	/**
	 * 更新时间
	 */
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;
	/**
	 * 七牛云地址
	 */
	private String qiNiuUrl;
	/**
	 * Minio文件URL
	 */
	private String minioUrl;
	/**
	 * 压缩Minio文件URL
	 */
	private String maxMinioUrl;
	/**
	 * 压缩七牛云文件URL
	 */
	private String maxQiNiuUrl;
	/**
	 * 压缩文件URL
	 */
	private String maxPicUrl;
	/**
	 * 图片分辨率
	 */
	private String resolutionRatio;
	/**
	 * 阿里云文件url
	 */
	private String aliOssUrl;

	/**
	 * 用户
	 */
	private UserDto user;

	/**
	 * 用户列表
	 */
	private List<UserDto> userList;

	/**
	 * 当前的url地址
	 */
	private String pictureUrl;

}
